<script setup>

    /**
     *  1. pinia的基本使用流程
     *     npm install pinia 
     *     main.js绑定pinia 
     *     import {createPinia} from 'pinia'
     *     use(createPinia())
     *     定义store即可
     *     组件中创建sotore对象,进行数据存储和读取
     *  2. store定义步骤
     *     impror {defineStore} from 'pinia'
     *     let store = defineStore("id标识",{
     *         state:()=>{return {属性名:默认值,属性名:默认值}}, //属性默认是就响应式
     *         getters:{ 函数(){ this return} }, //获取一些带有逻辑业务的数据 例如: name name的长度,使用的时候当属性使用 不要()
     *         action:{函数(){this}} //对属性的修改或者获取以及删除的封装方法 使用的时候,需要加() 方法
     *     });
     *     export default store;
     *  3. 属性读取
     *     import store 
     *     let 对象 = store();
     *     对象.属性名
     *  4. getter读取
     *     let 对象 = store();
     *     对象.get方法名
     *  3. action调用 
     *     let 对象 = store();
     *     对象.方法名()
     *  4. 注意: pinia存储的数据,只要刷新浏览器,就会丢失!! [js Storage进行数据存储和持久化]
     *  5. pinia本身存在内置方法 (了解)
     *     store.$reset(); [pinia重置数据 state的默认值]
     *     srore.$patch({} == {属性名:默认值,属性名:默认值} ) 批量属性修改值
     *    
     */



    import userStore from '../store/userStore';

    let user = userStore(); //同一个对象

    console.log(user.getNameLength);

    let clean = ()=>{
        user.clean();
    }
</script>

<template>
  <div>
     {{ user.id }}  :: {{user.name}} :: {{user.hashCN}} ::{{user.getNameLength}}
     <button @click="clean()">清空</button>
  </div>
</template>

<style scoped>

</style>